home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor1 / edir.doc < prev    next >
Text File  |  1995-03-31  |  3KB  |  120 lines

  1. Author: Kevin Jessup 
  2.  
  3. EDIR is a program that provides an extended directory 
  4. listing of all variables within the directory from 
  5. which it is run.  The variable name is displayed, 
  6. followed by the variable type and it's size in bytes. 
  7.  
  8. The program output is a graphics object that is then 
  9. made available using the graphics application viewer. 
  10.  
  11. Use the UP and DOWN arrows to move through the list. 
  12. Use right shift (blue) followed by the UP or DOWN 
  13. arrows to rapidly reach the top or bottom of the 
  14. display as needed.  The last item displayed is a total 
  15. byte count for all objects in the current directory. 
  16. Hit ON when you are finished viewing to exit the 
  17. graphics application and clear the graphic object from 
  18. memory. 
  19.  
  20. It may take a couple of minutes to build the graphics 
  21. object if you have a large directory. 
  22.  
  23. You should have about 6000 bytes of free memory for 
  24. this program to run with a relatively large directory. 
  25. The larger the directory, the more memory required to 
  26. build the graphics object.  If you don't have enough 
  27. memory, you'll find out about it as the program builds 
  28. the graphic.  No damage will occur.  Just delete any 
  29. garbage on the stack. 
  30.  
  31. I wrote this program as an enhancement to the REVIEW 
  32. key when used to review a user directory.  I wish the 
  33. review key did what this program does.  Too bad the 
  34. EDIR program is such a run-time memory hog!  Those 
  35. lucky enough to have a RAM expansion card will probably 
  36. use it occaisionally.  If you don't, please note that 
  37. the 48SX PURGE command has always been a solid performer! 
  38.  
  39. Note that the program listings were generated with the 
  40. 48SX translate code set equal to 3. 
  41.  
  42. 25-Aug-90 
  43. Kevin Jessup 
  44. Milwaukee, WI 
  45. (414) 355-9752 
  46.  
  47. ***************************************************** 
  48. Program name: TYPSTRS (a list of object type strings) 
  49. Checksum:     3887 hex 
  50. Size:         251.5 
  51. Function:     This is a list used by EDIR to get a 
  52.               textual description of the object type. 
  53. Listing: 
  54.  
  55. %%HP: T(3)A(D)F(.); 
  56. { "real" "complex" 
  57. "string" 
  58. "real array" 
  59. "complex array" 
  60. "list" "global" 
  61. "local" "program" 
  62. "algebraic" 
  63. "binary" "graphic" 
  64. "tagged" "unit" 
  65. "xlib" "directory" 
  66. "library" "backup" 
  67. "function" 
  68. "command" } 
  69.  
  70. ***************************************************** 
  71. Program name: EDIR (extended directory listing) 
  72. Checksum:     6C5F hex 
  73. Size:         615.5 
  74. Function:     The EDIR utility.  Place it and the 
  75.               TYPSTRS list in your "HOME" directory. 
  76. Listing: 
  77.  
  78. %%HP: T(3)A(D)F(.); 
  79. \<< PICT PURGE CLLCD 
  80. "Checking:" 1 DISP 
  81. { { # 0h 
  82.   \<< 0 SWAP \->TAG 
  83. OBJ\-> SWAP DROP DUP 
  84. " " SWAP + 3 DISP 
  85.   \>> } { # 37h 
  86.   \<< VTYPE 1 + 
  87. TYPSTRS SWAP GET 
  88.   \>> } { # 6Ah 
  89.   \<< BYTES SWAP DROP 
  90. DUP 5 ROLL + 4 
  91. ROLLD 
  92.   \>> } } VARS DUP 
  93. SIZE 6 * 12 + R\->B 
  94. # 83h SWAP BLANK 
  95. # 83h # 6h BLANK \-> 
  96. pro var dg bl 
  97.   \<< 0 1 var SIZE 
  98.     FOR i bl 1 3 
  99.       FOR j 'pro' j 
  100. GET 1 GETI # 0h 2 
  101. \->LIST 3 ROLLD GET 
  102. 'var' i GET SWAP 
  103. EVAL 1 \->GROB REPL 
  104.       NEXT # 0h i 1 
  105. - 6 * R\->B 2 \->LIST 
  106. dg SWAP ROT REPL 
  107. 'dg' STO 
  108.     NEXT dg 
  109.   \>> CLLCD DUP SIZE 
  110. # 6h - SWAP DROP 
  111. # 0h SWAP 2 \->LIST 
  112. ROT 
  113. "TOTAL BYTES USED: " 
  114. SWAP \->STR + 1 \->GROB 
  115. REPL PICT STO { } 
  116. PVIEW PICT PURGE 
  117. \>> 
  118.  
  119. ********************[END]****************** 
  120.